from config import config
import psycopg2
def read_blob(id):
    """ read BLOB data from a table """
    conn = None
    try:
        # read database configuration
        params = config()
        # connect to the PostgresQL database
        conn = psycopg2.connect(**params)
        # create a new cursor object
        cur = conn.cursor()
        # execute the SELECT statement
        cur.execute(""" SELECT *
                        FROM t123                        
                        WHERE id = %s """,
                    (id,))
 
        blob = cur.fetchone()
        list1=list(blob) #元组转list列表
        print(list1)
        # close the communication with the PostgresQL database
        cur.close()
    except (Exception, psycopg2.DatabaseError) as error:
        print(error)
    finally:
        if conn is not None:
            conn.close()

if __name__ == '__main__':
    read_blob(1)


'''
查询数据和其它操作类似。
可以使用cursor.fetchone, cursor.fetchall, cursor.fetchmany(size=cursor.arraysize)方法来返回查询结果。fetchone返回一个tuple或者None, fetchall返回一个list of tuple，如果没有结果则返回一个空的tuple。fetchmany返回list of tuple， list的长度由size参数决定，size的默认值是cursor.arraysize， 如果没有结果可以返回，那么返回一个空的list。
删除数据
和更新数据类似
可以使用cursor.rowcount来获得删除的行数目。
'''